1. Field of the Invention
The present invention relates to an information processing apparatus, an information processing method, and a storage medium that stores a software program implementing the information processing method on a computer, and more particularly to an information processing apparatus with the ability to turn the power of a secondary storage device off in a power saving mode.
2. Description of the Related Art
Recently, information processing apparatuses such as image processing apparatuses (e.g., printers, facsimiles, and digital multi function peripherals (MFPs)) are required to be energy-efficient. They accomplish this goal in part by keeping their standby power consumption low, by stopping supplying power to parts of the apparatus.
An example of an image processing apparatus that downloads programs from a hard disk drive (HDD) to a dynamic random access memory (DRAM) in advance, cuts off the power of the HDD in transition from a normal operating mode to power saving mode, and resumes quickly rebooting programs stored in the DRAM in returning to normal mode from power saving mode is disclosed, for example, in JP-2005-193652-A.
However, the image processing apparatus described above has three problems. (1) It is expensive to equip the image forming apparatus with a DRAM that can store all the programs that are on the HDD. (2) It takes time to return to normal operation from the power saving mode since it is necessary to reboot the programs. (3) How to maintain the state of file systems shared by the whole system, such as file system mounting information in the secondary storage device, is not described. While individual programs can be booted up this way, doing so might contradict the state of the booted program since the state that is seen from the system as a whole, such as the file system mounting information, cannot be maintained.
JP-2007-306143-A discloses another example of an image processing apparatus having a power control capability. The apparatus registers callback functions provided for each device driver for each power control mode when it initializes the device drivers. Accordingly, the callback function is called using events of transitioning to and from power saving mode as triggers. State saving processes that each device driver executes in transitioning to power saving mode and saved state recovering processes that each device driver executes in returning from power saving mode are implemented in the callback functions. Accordingly, each device can maintain its state as it transitions to and from power saving mode.
However, while the image processing apparatus described in JP-2007-306143-A can maintain the state of each device, saving file system information that does not belong to a device is not considered. Also, controlling behavior inside kernel processes and that of user processes is not considered.
Concerning secondary storage devices such as USB memory devices, cutting off the power to save power consumption is regarded as ejecting the device. Although a shutdown process is executed at the time of ejection, it is necessary to distinguish whether that shutdown process was evoked by transitioning to power saving mode or by turning the power off. Hooking functions cannot execute this kind of complicated control.